package com.ysg.utils;

import android.widget.EditText;
import android.widget.TextView;

/**
 * EditText工具类
 */
public class YEditTextUtil {

    /**
     * 光标最后
     */
    public static void setCursorLast(EditText et){
        String s = et.getText().toString();
        if (YStringUtil.isNotEmpty(s)){
            et.setSelection(s.length());//将光标移至文字末尾
        }
    }

    /**
     * 控制输入的小数点长度
     * 如：只能输入流两位小数 length=2
     */
    public static void setInputPointLength(CharSequence s, EditText et, int length){
        if (YStringUtil.isEmpty(String.valueOf(s))){
            return;
        }
        //如果第一个数字为0，第二个不为点，就不允许输入
        if (s.toString().startsWith("0") && s.toString().trim().length() > 1) {
            if (!s.toString().substring(1, 2).equals(".")) {
                et.setText(s.subSequence(0, 1));
                et.setSelection(1);
                return;
            }
        }
        //如果第一为点，直接显示0.
        if (s.toString().startsWith(".")) {
            et.setText("0.");
            et.setSelection(2);
            return;
        }
        //限制输入小数位数(2位)
        if (s.toString().contains(".")) {
            if (s.length() - 1 - s.toString().indexOf(".") > length) {
                s = s.toString().subSequence(0, s.toString().indexOf(".") + 2 + 1);
                et.setText(s);
                et.setSelection(s.length());
            }
        }
    }

    /**
     * 场景：控制输入框输入数量
     */
    public static void setContentMaxLength(String content, int max, TextView tvHint, String hint){
        if (YStringUtil.isNotEmpty(content)) {
            if (content.length() == max) {
                YToastUtil.showShort(hint);
            }
            tvHint.setText(content.length() + "/" + max);
        }
    }






}
